#ifndef CAMERADETAILS_H
#define CAMERADETAILS_H

enum CAM_INTERFACE_TYPE {
	CAM_INTERFACE_TYPE_HIGH_GUI,
	CAM_INTERFACE_TYPE_AVT_UNIAPI,
	CAM_INTERFACE_TYPE_AVT_GIGE,
	CAM_INTERFACE_TYPE_IMAGING_SOURCE,
	CAM_INTERFACE_TYPE_END
};

enum DEMOSAICING_TYPE {
	DEMOSAICING_TYPE_MONO,
	DEMOSAICING_TYPE_END
};

enum CFA_TYPE {
	CFA_TYPE_BG,
	CFA_TYPE_END
};

class CameraDetails {
public:
	CameraDetails():camIndex(-1),camInterface(CAM_INTERFACE_TYPE_END),camName(std::string("NoName")) {}
    CameraDetails(int i, CAM_INTERFACE_TYPE iface, std::string str):camIndex(i),camInterface(iface),camName(str) {}
    CameraDetails(int i, CAM_INTERFACE_TYPE iface, std::string str, unsigned long camID):camIndex(i),camInterface(iface),camName(str),uniqueId(camID) {}
	~CameraDetails() {}
	int camIndex;
    CAM_INTERFACE_TYPE camInterface;
	std::string camName;
	unsigned long uniqueId;
};

#endif
